﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Audio;

using _XNA__RunningDeath.BUS;
using _XNA__RunningDeath.BUS.VatThe;
using Microsoft.Xna.Framework;
using _XNA__RunningDeath.DAO;

namespace _XNA__RunningDeath.GLO
{
    class CGLOBAL
    {
        public static bool NextGUI = false;                             // Xát định xem là mình có chuyển gui mới không?
        public static MouseState MousePrev;                             // Trạng thái chuột trước
        public static MouseState MouseCurrent;                          // Trạng thái chuột sau
        public static GUIenum GUISelected;                              // Lưu giao diện đang chọn
        public static GUIenum GUISelectedPrev;                          // Giao diện trước khi chọn
       
        public static int speedBeMatDiChuyen;                            // tốc đổ di chuyển của bề mặt di chuyển
        public static int speedDa;                                       // tốc chuyển da
        public static int speedChuoi;                                    // tốc chuyển Chuối
        public static int speedAt;                                       // tốc chuyển Của Vật Thể

        public static Vector2 PointActorStand = new Vector2(100, 392);  // vị trí nhân vật khi khởi động và khi chạy
        public static Vector2 PointActorMax = new Vector2(100, 200);    // vị trí cao nhất mà nhân vật có thể nhảy tới
        public static int SpeedActor = 3;                               // Tốc độ của nhân vật khi di chuyển
        public static int posMax = 5;                                   // độ cao tối đa của nhân vật
        public static int Life;                                         // Lưu số mạng của người chơi
        public static int Score;                                        // Lưu điểm của người chơi
        public static bool isVolumOn = true;                            // Trạng thái bật của volum                    
        public static SoundEffect soundFXbtn;                           // Âm thanh các nút button
        public static Song _nhacnen;                                    // Nhạc nền


        public static int khoangCachHo = 100;                           //Khoản cách của hố
        public static double timevibiGameOver=0;                        //Đếm thời gian hiện bảng gameOver

        public static enumGamePlay GamePlay = enumGamePlay.pause;       //Trạng thái tạm dừng của games
        public static enumTrangThaiDa TrangThaiDa;                      //Trạng thái của đá
        public static enumGame NewGame;                                 // Trạng thái của game (là mới hay là tiếp tục)

        public static CNhanVat_BUS NhanVatBus;                          // lớp xử lý nhân vật
        public static CDa_BUS VTda;                                     // lớp xử lý đá
        public static CMap_BUS MapGame;                                 // lớp xử lý Maps

        public static List<SaveGameData> arrDataGame = new List<SaveGameData>();      // lớp lưu các game đã lưu
        public static List<SaveScore> arrScoreGame = new List<SaveScore>();      // lớp lưu các game đã lưu
        public static string PlayerNameCurent ="NguoiChoi";                //Tên người chơi hiện tại

        public static Vector2 pointActor;                               //Dùng lưu vị trí nhân vật
        public static Vector2 pointBeMat01;                             //Dùng lưu vị trí bề mặt 1
        public static Vector2 pointBeMat02;                             //Dùng lưu vị trí bề mặt 2
        public static Vector2 pointBeMat03;                             //Dùng lưu vị trí bề mặt 3
        public static Vector2 pointDa;                                  //Dùng lưu vị trí Đá đang xuất hiện
        public static Rectangle _recHo;                                 //Dùng lưu vị trí Hố đang xuất hiện
        public static List<CChuoi_BUS> dsChuoi;
        public static List<Rectangle> recGameScore = new List<Rectangle>();
        public static List<Rectangle> recGameData = new List<Rectangle>();
    }
}
